home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Special 16 / AMIGAplus Sonderheft 16 (1998)(ICP)(DE)[!].iso / pd / anwendungen / gpatch / examplescripts / updatemyprogram.installer < prev    next >
Text File  |  1998-03-01  |  3KB  |  74 lines

  1. ;$VER: Update_MyProgram V1
  2. ;written by Thomas Baust
  3.  
  4. ;-------------------------------------------------
  5. ;Setze Variablen für leichtere Übersetzung
  6. ;-------------------------------------------------
  7. (set #Ver ("1.3"))
  8.  
  9. (set #welc (cat "\n\nDies ist ein Update für MyProgram,\n"
  10.        "von Version 1x auf die Version "#Ver".\n\n"
  11.        "Für genauere Informationen lesen sie bitte die Dokumentation."))
  12.  
  13. (set #whereprog ("In welchem Verzeichnis ist `MyProgram`\ninstalliert ?"))
  14.  
  15. (set #helpwhereprog ("Das Hauptverzeichnis des Programmes, das upgedatet werden soll."))
  16.  
  17. (set #patch1_1 (cat "\n\nJetzt wird die Datei `"))             ;Dateiname wird eingefügt
  18. (set #patch1_2 (cat "`\nvon V"))                               ;Alte Version wird eingefügt
  19. (set #patch1_3 (cat " auf V"))                                 ;Neue Version wird eingefügt
  20. (set #patch1_4 (cat " gepatcht."))
  21.  
  22. (set #ErrorMsg1_1 (cat "\n\nDas Patchen der Datei `"))         ;Dateiname wird eingefügt
  23. (set #ErrorMsg1_2 (cat "`\n ist fehlgeschlagen !!!"
  24.                        "\n\n\nEntweder wurde das File nicht gefunden,\n"
  25.                        "oder es ist bereits die Version "))    ;Neue Version wird eingefügt
  26. (set #ErrorMsg1_3 (cat " oder höher"
  27.                        "\noder diese Version ist nicht Updateberechtigt..."))
  28.  
  29. ;-------------------------------------------------
  30. ; Vergleiche Versionen, und patche die Datei
  31. ; Verzeichnis, Datei, Neue Versionsnummer
  32. ;-------------------------------------------------
  33. (procedure Update #dir #dat #nver
  34.  (set #dat2 (tackon #dir #dat))
  35.  (set #vernum1 (getversion #dat2))
  36.  (set #ver1 (/ #vernum1 65536))
  37.  (set #rev1 (- #vernum1 (* #ver1 65536) ) )
  38.  
  39.  (message (cat #patch1_1 #dat #patch1_2 #ver1"."#rev1 #patch1_3 #nver #patch1_4))
  40.  (rename #dat2 (cat #dat2".old") (safe))
  41.  (set #patch (run (cat "gpatch "#dat2".old "#dat".patch "#dat2) (safe)))
  42.  (if (> #patch 0) (rename (cat #dat2".old") #dat2 (safe)))
  43.  (if (> #patch 0) (message (cat #ErrorMsg1_1 #dat #ErrorMsg1_2 #nver #ErrorMsg1_3)))
  44.  (delete (cat #dat2".old") (safe))
  45. )
  46.  
  47. ;-------------------------------------------------
  48. ;Starte Update
  49. ;-------------------------------------------------
  50. (complete 0)
  51. (message #welc)
  52. (welcome)
  53.  
  54. ;-------------------------------------------------
  55. ;Frage nach Verzeichnis des Programmes
  56. ;-------------------------------------------------
  57. (set @default-dest (askdir (prompt #whereprog) (help #helpwhereprog) (default "ram:")))
  58. (complete 10)
  59.  
  60. ;-------------------------------------------------
  61. ;Update Hauptprogramm & Library
  62. ;-------------------------------------------------
  63.  
  64. (Update @default-dest "MyProgram" "1.3")
  65. (complete 50)
  66. (Update @default-dest "My.library" "1.3a")
  67. (complete 100)
  68.  
  69. ;-------------------------------------------------
  70. ;Fertig...
  71. ;-------------------------------------------------
  72. (exit)
  73.  
  74.